package com.yhsoft.benefitcard.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * <p>
 * 福利卡二级批次信息表
 * </p>
 *
 * @author yyyyyyyh
 * @since 2023-10-04
 */
@TableName("benefit_cards_batch2")
@Data
public class CardsBatch2 implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * id
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    /**
     * 二级批次编号
     */
    private String secondBantchNum;

    /**
     * 一级批次编号
     */
    private String firstBatchNum;

    /**
     * 卡片类型
     */
    @ApiModelProperty("福利卡类型，JFK-积分卡 DYQ-电影券  LPK-礼品卡")
    private String cardType;

    /**
     * 渠道商ID
     */
    private Integer distributorId;

    /**
     * 面值
     */
    private String faceValue;

    /**
     * 售价
     */
    private String salePrice;

    /**
     * 下游企业id
     */
    private Integer customerId;

    /**
     * 可用城市
     */
    private String enableCity;

    /**
     * 是否限制有效期
     */
    private Integer isLimitedDate;

    /**
     * 电影模块加价，单位（元）
     */
    private BigDecimal flimBatchAddPrice;

    /**
     * 开始日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd", timezone="GMT+8")
    private LocalDate startTime;

    /**
     * 结束日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd", timezone="GMT+8")
    private LocalDate endTime;

    /**
     * 是否电影票风控
     */
    private Integer isFlimFk;

    /**
     * 是否特殊场次购票
     */
    private Integer isSpecialShowing;

    /**
     * 可使用专题
     */
    private String salesTopicId;

    /**
     * 是否展示商品面值
     */
    private Integer isShowFacevalue;

    /**
     * 号段
     */
    private String paragraphNumber;

    /**
     * 是否被冻结
     */
    private Integer isEnable;

    /**
     * 逻辑删除
     */
    @TableField(fill = FieldFill.INSERT)
    private Integer deleted;

    /**
     * 创建人
     */
    @TableField(fill = FieldFill.INSERT)
    private String createdBy;

    /**
     * 创建时间
     */
    @TableField(fill = FieldFill.INSERT)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone="GMT+8")
    private LocalDateTime createTime;

    /**
     * 更新人
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private String updatedBy;

    /**
     * 更新时间
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone="GMT+8")
    private LocalDateTime updatedTime;
}
